//包装uniapp本地存储相关api
export class UniStorage{
    static get(key){
        let data = uni.getStorageSync(key)
        if (data){
            let {expire,value} = data
            //判断是否过期
            if (expire>0 && expire < Date.now()){
                this.remove(key)
                return null
            }
            return value
        }
        return null
    }

    /**
     * 设置缓存
     * @param key
     * @param value 实际存储值,会被包装为一个对象,格式为:{value:xxx,expire:xxx}
     * @param expire 过期时间,单位秒,默认不过期.
     * @returns {*}
     */
    static set(key,value,expire=-1){
        return uni.setStorageSync(key,{value,expire:expire === -1 ?-1:Date.now()+expire*1000})
    }
    static remove(key){
        return uni.removeStorageSync(key)
    }
    static clear(){
        return uni.clearStorageSync()
    }
}
